//package homework;
//
//class ListNode {
//    int val;
//    ListNode next;
//
//    public ListNode(int val) {
//        this.val = val;
//    }
//}
//
//class Solution {
//    public ListNode deleteDuplication(ListNode pHead) {
//
//        ListNode dummy = new ListNode(-1);
//        ListNode tail = dummy;
//
//        while (pHead != null) {
//            if (pHead.next == null || pHead.next.val != pHead.val) {
//                tail.next = pHead;
//                tail = pHead;
//            }
//
//            while (pHead.next != null && pHead.val == pHead.next.val) {
//                pHead = pHead.next;
//            }
//
//            pHead = pHead.next;
//        }
//
//        tail.next = null;
//        return dummy.next;
//    }
//}
//
//public class Test5 {
//    public static void main(String[] args) {
//        Solution solution = new Solution();
//        ListNode node1 = new ListNode(1);
//        ListNode node2 = new ListNode(2);
//        ListNode node3 = new ListNode(3);
//        ListNode node4 = new ListNode(3);
//        ListNode node5 = new ListNode(4);
//        ListNode node6 = new ListNode(4);
//        ListNode node7 = new ListNode(5);
//        node1.next = node2;
//        node2.next = node3;
//        node3.next = node4;
//        node4.next = node5;
//        node5.next = node6;
//        node6.next = node7;
//        ListNode node10 = solution.deleteDuplication(node1);
//        System.out.println(node10.val);
//        System.out.println(node10.next.val);
//        System.out.println(node10.next.next.val);
//    }
//}
